[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
Int 10 Fn 1C  - Video - Save/restore Video State (ps50+,vga)               [V]

   AH = 1Ch
   AL = function
       00h return state buffer size

       Return: BX = number of 64-byte blocks needed
       01h save video state
       ES:BX -> buffer
       02h restore video state
       ES:BX -> buffer containing previously saved state
   CX = requested states
        bit 0 video hardware
        bit 1 BIOS data areas
        bit 2 color registers and DAC state
        bits 3-15 reserved

Return: AL = 1Ch if function supported

Notes: many BIOSes corrupt the video registers when saving the state, so a
     program should restore the state immediately after saving it (the
     saved data is uncorrupted)
   the BIOS data area consists of the 96 bytes from 0040h:0049h-00A8h

Format of video hardware state:
Offset Size    Description
 00h   BYTE    sequencer index register
 01h   BYTE    CRTC index register
 02h   BYTE    graphics controller index register
 03h   BYTE    attribute controller index register
 04h   BYTE    feature controller register
 05h  4 BYTEs  sequencer registers
 09h   BYTE    sequencer register 0
 0Ah 25 BYTEs  CRTC registers 0-8
 23h 16 BYTEs  palette registers 00h-0Fh
 33h  4 BYTEs  attribute registers 10h-13h
 37h  9 BYTEs  graphics controller registers 0-8
 40h   BYTE    CRTC base address (low)
 41h   BYTE    CRTC base address (high)
 42h   BYTE    plane 0 latch
 43h   BYTE    plane 1 latch
 44h   BYTE    plane 2 latch
 45h   BYTE    plane 3 latch

Format of DAC state:
Offset Size    Description
 00h   BYTE    read/write mode DAC
 01h   BYTE    pixel address
 02h   BYTE    pixel mask
 03h 768 BYTEs color data (256 triples)
303h   BYTE    color select register

This page created by ng2html v1.05, the Norton guide to HTML conversion utility. Written by Dave Pearson